<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>混入</title>
</head>
<body>

<div id="root">

</div>

<script src="./js/vue.js"></script>
<script>
  // 全局混入
  Vue.mixin({
    // 全局混入，只混入vue配置选项，优先级是最高的
    created() {
      console.log('mixin-全局 - 中的created')
    },
		methods:{
      fn(){
        console.log('全局-fn')
			}
		}
  })
	// 局部混入
  const life = {
    // 优先级低于全局，但高于vue实例对象的
    created() {
      console.log('mixin- 局部 - 中的created')
    },
    methods:{
      // 如果局部混入和全局混入，方法名同名，则局部生效
      fn() {
        console.log('局部-fn')
      }
    }
  }
  new Vue({
    el: '#root',
    // 生命周期方法  它也会执行
    created() {
      console.log('created')
			this.fn()
    },
    mixins: [life],
		methods:{
      //方法永久听vue对象中的methods定义的，除非它没有
		}
  })
</script>
</body>
</html>